<!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.2//EN" "http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
<module name="Checker">
    <property name="severity" value="warning"/>
    <module name="TreeWalker">
        <property name="tabWidth" value="4"/>
        <module name="JavadocMethod">
            <property name="allowUndeclaredRTE" value="true"/>
            <property name="allowThrowsTagsForSubclasses" value="true"/>
        </module>
        <module name="JavadocType"/>
        <module name="JavadocVariable"/>
        <module name="JavadocStyle">
            <property name="checkEmptyJavadoc" value="true"/>
        </module>
        <module name="ConstantName"/>
        <module name="LocalFinalVariableName"/>
        <module name="LocalVariableName"/>
        <module name="MemberName"/>
        <module name="MethodName"/>
        <module name="PackageName"/>
        <module name="ParameterName"/>
        <module name="StaticVariableName"/>
        <module name="TypeName"/>
        <module name="AvoidStarImport"/>
        <module name="IllegalImport"/>
        <module name="RedundantImport"/>
        <module name="UnusedImports"/>
        <module name="FileLength">
            <property name="max" value="2000"/>
        </module>
        <module name="LineLength">
            <property name="max" value="120"/>
        </module>
        <module name="MethodLength">
            <property name="max" value="50"/>
        </module>
        <module name="ParameterNumber">
            <property name="max" value="5"/>
        </module>
        <module name="EmptyForIteratorPad"/>
        <module name="MethodParamPad"/>
        <module name="TabCharacter"/>
        <module name="ModifierOrder"/>
        <module name="AvoidNestedBlocks"/>
        <module name="EmptyBlock"/>
        <module name="LeftCurly"/>
        <module name="NeedBraces"/>
        <module name="RightCurly"/>
        <module name="AvoidInlineConditionals"/>
        <module name="DoubleCheckedLocking"/>
        <module name="EmptyStatement"/>
        <module name="EqualsHashCode"/>
        <module name="HiddenField"/>
        <module name="IllegalInstantiation"/>
        <module name="InnerAssignment"/>
        <module name="MissingSwitchDefault"/>
        <module name="RedundantThrows"/>
        <module name="SimplifyBooleanExpression"/>
        <module name="SimplifyBooleanReturn"/>
        <module name="FinalClass"/>
        <module name="HideUtilityClassConstructor"/>
        <module name="InterfaceIsType"/>
        <module name="VisibilityModifier"/>
        <module name="ArrayTypeStyle"/>
        <module name="UpperEll"/>
        <module name="AbstractClassName">
            <property name="format" value="^Abstract.*$|^Base.*$"/>
        </module>
        <module name="AnonInnerLength"/>
        <module name="EmptyForInitializerPad"/>
        <module name="CovariantEquals"/>
        <module name="DefaultComesLast"/>
        <module name="DeclarationOrder"/>
        <module name="ExplicitInitialization"/>
        <module name="FallThrough"/>
        <module name="IllegalCatch"/>
        <module name="IllegalThrows"/>
        <module name="JUnitTestCase"/>
        <module name="MultipleVariableDeclarations"/>
        <module name="PackageDeclaration"/>
        <!-- <module name="ParameterAssignment"/> -->
        <module name="ReturnCount">
            <property name="max" value="1"/>
        </module>
        <module name="StringLiteralEquality"/>
        <module name="SuperFinalize"/>
        <module name="ArrayTrailingComma"/>
        <module name="UnnecessaryParentheses"/>
        <module name="MutableException"/>
        <module name="ThrowsCount">
            <property name="max" value="3"/>
        </module>
        <module name="CyclomaticComplexity"/>
        <module name="TrailingComment"/>
    </module>
    <module name="PackageHtml">
        <property name="fileExtensions" value="html"/>
    </module>
</module>